package com.mdc.mansion.core.modules.order;

import java.util.List;
import java.util.Map;

import com.mdc.mansion.dataaccess.common.service.BaseService;
import com.mdc.mansion.dataaccess.modules.order.entity.RestaurantOrderItem;
import com.mdc.mansion.dataaccess.modules.order.mo.RestaurantOderItemUnionMo;
import com.mdc.mansion.dataaccess.modules.order.mo.RestaurantOrderItemMO;

/**
 * 餐厅订单明细信息Service
 * @author mingdongc
 * @version 2018-01-01
 */
public interface RestaurantOrderItemService extends  BaseService<RestaurantOrderItem> {

    List<RestaurantOrderItemMO> getNotCheckOutOrderItems(RestaurantOrderItemMO restaurantOrderItemMO);
    
    void updateByParam(RestaurantOrderItemMO restaurantOrderItemMO);

    List<RestaurantOrderItem> findCanCalculateList(RestaurantOrderItem restaurantOrderItem);

    List<RestaurantOrderItemMO> getNotWaiterSureOrderItems(RestaurantOrderItemMO restaurantOrderItemMO);

    int countNotFinalByDishesId(String restaurantDishesId);

	List<RestaurantOrderItemMO> findKitchenDishesListByStatus(Map<String, String> paraMap);

	List<RestaurantOrderItem> mergeOrderInfo(RestaurantOrderItem restaurantOrderItem);

	List<RestaurantOrderItemMO> getMergeDishes(Map<String, Object> paraMap);

	List<String> getItemListForMerge(Map<String, Object> paraMap);

	List<RestaurantOderItemUnionMo> findKitchenDishesList(Map<String, String> paraMap);

	List<String> findKitchenItemList(RestaurantOrderItem item);
	
	List<RestaurantOderItemUnionMo> useItemGetCombo(String orderItemId);
	
	void updateItemByDetail(RestaurantOrderItemMO restaurantOrderItemMO);
}

